package com.car.entity;

import java.util.ArrayList;
import java.util.List;

public class InformationEntertainmentExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public InformationEntertainmentExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andIdIsNull() {
            addCriterion("id is null");
            return (Criteria) this;
        }

        public Criteria andIdIsNotNull() {
            addCriterion("id is not null");
            return (Criteria) this;
        }

        public Criteria andIdEqualTo(String value) {
            addCriterion("id =", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotEqualTo(String value) {
            addCriterion("id <>", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThan(String value) {
            addCriterion("id >", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThanOrEqualTo(String value) {
            addCriterion("id >=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThan(String value) {
            addCriterion("id <", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThanOrEqualTo(String value) {
            addCriterion("id <=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLike(String value) {
            addCriterion("id like", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotLike(String value) {
            addCriterion("id not like", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdIn(List<String> values) {
            addCriterion("id in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotIn(List<String> values) {
            addCriterion("id not in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdBetween(String value1, String value2) {
            addCriterion("id between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotBetween(String value1, String value2) {
            addCriterion("id not between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andLcdPanelIsNull() {
            addCriterion("LCD_panel is null");
            return (Criteria) this;
        }

        public Criteria andLcdPanelIsNotNull() {
            addCriterion("LCD_panel is not null");
            return (Criteria) this;
        }

        public Criteria andLcdPanelEqualTo(String value) {
            addCriterion("LCD_panel =", value, "lcdPanel");
            return (Criteria) this;
        }

        public Criteria andLcdPanelNotEqualTo(String value) {
            addCriterion("LCD_panel <>", value, "lcdPanel");
            return (Criteria) this;
        }

        public Criteria andLcdPanelGreaterThan(String value) {
            addCriterion("LCD_panel >", value, "lcdPanel");
            return (Criteria) this;
        }

        public Criteria andLcdPanelGreaterThanOrEqualTo(String value) {
            addCriterion("LCD_panel >=", value, "lcdPanel");
            return (Criteria) this;
        }

        public Criteria andLcdPanelLessThan(String value) {
            addCriterion("LCD_panel <", value, "lcdPanel");
            return (Criteria) this;
        }

        public Criteria andLcdPanelLessThanOrEqualTo(String value) {
            addCriterion("LCD_panel <=", value, "lcdPanel");
            return (Criteria) this;
        }

        public Criteria andLcdPanelLike(String value) {
            addCriterion("LCD_panel like", value, "lcdPanel");
            return (Criteria) this;
        }

        public Criteria andLcdPanelNotLike(String value) {
            addCriterion("LCD_panel not like", value, "lcdPanel");
            return (Criteria) this;
        }

        public Criteria andLcdPanelIn(List<String> values) {
            addCriterion("LCD_panel in", values, "lcdPanel");
            return (Criteria) this;
        }

        public Criteria andLcdPanelNotIn(List<String> values) {
            addCriterion("LCD_panel not in", values, "lcdPanel");
            return (Criteria) this;
        }

        public Criteria andLcdPanelBetween(String value1, String value2) {
            addCriterion("LCD_panel between", value1, value2, "lcdPanel");
            return (Criteria) this;
        }

        public Criteria andLcdPanelNotBetween(String value1, String value2) {
            addCriterion("LCD_panel not between", value1, value2, "lcdPanel");
            return (Criteria) this;
        }

        public Criteria andLcdSizeIsNull() {
            addCriterion("LCD_size is null");
            return (Criteria) this;
        }

        public Criteria andLcdSizeIsNotNull() {
            addCriterion("LCD_size is not null");
            return (Criteria) this;
        }

        public Criteria andLcdSizeEqualTo(String value) {
            addCriterion("LCD_size =", value, "lcdSize");
            return (Criteria) this;
        }

        public Criteria andLcdSizeNotEqualTo(String value) {
            addCriterion("LCD_size <>", value, "lcdSize");
            return (Criteria) this;
        }

        public Criteria andLcdSizeGreaterThan(String value) {
            addCriterion("LCD_size >", value, "lcdSize");
            return (Criteria) this;
        }

        public Criteria andLcdSizeGreaterThanOrEqualTo(String value) {
            addCriterion("LCD_size >=", value, "lcdSize");
            return (Criteria) this;
        }

        public Criteria andLcdSizeLessThan(String value) {
            addCriterion("LCD_size <", value, "lcdSize");
            return (Criteria) this;
        }

        public Criteria andLcdSizeLessThanOrEqualTo(String value) {
            addCriterion("LCD_size <=", value, "lcdSize");
            return (Criteria) this;
        }

        public Criteria andLcdSizeLike(String value) {
            addCriterion("LCD_size like", value, "lcdSize");
            return (Criteria) this;
        }

        public Criteria andLcdSizeNotLike(String value) {
            addCriterion("LCD_size not like", value, "lcdSize");
            return (Criteria) this;
        }

        public Criteria andLcdSizeIn(List<String> values) {
            addCriterion("LCD_size in", values, "lcdSize");
            return (Criteria) this;
        }

        public Criteria andLcdSizeNotIn(List<String> values) {
            addCriterion("LCD_size not in", values, "lcdSize");
            return (Criteria) this;
        }

        public Criteria andLcdSizeBetween(String value1, String value2) {
            addCriterion("LCD_size between", value1, value2, "lcdSize");
            return (Criteria) this;
        }

        public Criteria andLcdSizeNotBetween(String value1, String value2) {
            addCriterion("LCD_size not between", value1, value2, "lcdSize");
            return (Criteria) this;
        }

        public Criteria andDialPlateIsNull() {
            addCriterion("dial_plate is null");
            return (Criteria) this;
        }

        public Criteria andDialPlateIsNotNull() {
            addCriterion("dial_plate is not null");
            return (Criteria) this;
        }

        public Criteria andDialPlateEqualTo(String value) {
            addCriterion("dial_plate =", value, "dialPlate");
            return (Criteria) this;
        }

        public Criteria andDialPlateNotEqualTo(String value) {
            addCriterion("dial_plate <>", value, "dialPlate");
            return (Criteria) this;
        }

        public Criteria andDialPlateGreaterThan(String value) {
            addCriterion("dial_plate >", value, "dialPlate");
            return (Criteria) this;
        }

        public Criteria andDialPlateGreaterThanOrEqualTo(String value) {
            addCriterion("dial_plate >=", value, "dialPlate");
            return (Criteria) this;
        }

        public Criteria andDialPlateLessThan(String value) {
            addCriterion("dial_plate <", value, "dialPlate");
            return (Criteria) this;
        }

        public Criteria andDialPlateLessThanOrEqualTo(String value) {
            addCriterion("dial_plate <=", value, "dialPlate");
            return (Criteria) this;
        }

        public Criteria andDialPlateLike(String value) {
            addCriterion("dial_plate like", value, "dialPlate");
            return (Criteria) this;
        }

        public Criteria andDialPlateNotLike(String value) {
            addCriterion("dial_plate not like", value, "dialPlate");
            return (Criteria) this;
        }

        public Criteria andDialPlateIn(List<String> values) {
            addCriterion("dial_plate in", values, "dialPlate");
            return (Criteria) this;
        }

        public Criteria andDialPlateNotIn(List<String> values) {
            addCriterion("dial_plate not in", values, "dialPlate");
            return (Criteria) this;
        }

        public Criteria andDialPlateBetween(String value1, String value2) {
            addCriterion("dial_plate between", value1, value2, "dialPlate");
            return (Criteria) this;
        }

        public Criteria andDialPlateNotBetween(String value1, String value2) {
            addCriterion("dial_plate not between", value1, value2, "dialPlate");
            return (Criteria) this;
        }

        public Criteria andViewingScreenIsNull() {
            addCriterion("viewing_screen is null");
            return (Criteria) this;
        }

        public Criteria andViewingScreenIsNotNull() {
            addCriterion("viewing_screen is not null");
            return (Criteria) this;
        }

        public Criteria andViewingScreenEqualTo(String value) {
            addCriterion("viewing_screen =", value, "viewingScreen");
            return (Criteria) this;
        }

        public Criteria andViewingScreenNotEqualTo(String value) {
            addCriterion("viewing_screen <>", value, "viewingScreen");
            return (Criteria) this;
        }

        public Criteria andViewingScreenGreaterThan(String value) {
            addCriterion("viewing_screen >", value, "viewingScreen");
            return (Criteria) this;
        }

        public Criteria andViewingScreenGreaterThanOrEqualTo(String value) {
            addCriterion("viewing_screen >=", value, "viewingScreen");
            return (Criteria) this;
        }

        public Criteria andViewingScreenLessThan(String value) {
            addCriterion("viewing_screen <", value, "viewingScreen");
            return (Criteria) this;
        }

        public Criteria andViewingScreenLessThanOrEqualTo(String value) {
            addCriterion("viewing_screen <=", value, "viewingScreen");
            return (Criteria) this;
        }

        public Criteria andViewingScreenLike(String value) {
            addCriterion("viewing_screen like", value, "viewingScreen");
            return (Criteria) this;
        }

        public Criteria andViewingScreenNotLike(String value) {
            addCriterion("viewing_screen not like", value, "viewingScreen");
            return (Criteria) this;
        }

        public Criteria andViewingScreenIn(List<String> values) {
            addCriterion("viewing_screen in", values, "viewingScreen");
            return (Criteria) this;
        }

        public Criteria andViewingScreenNotIn(List<String> values) {
            addCriterion("viewing_screen not in", values, "viewingScreen");
            return (Criteria) this;
        }

        public Criteria andViewingScreenBetween(String value1, String value2) {
            addCriterion("viewing_screen between", value1, value2, "viewingScreen");
            return (Criteria) this;
        }

        public Criteria andViewingScreenNotBetween(String value1, String value2) {
            addCriterion("viewing_screen not between", value1, value2, "viewingScreen");
            return (Criteria) this;
        }

        public Criteria andHudShowIsNull() {
            addCriterion("HUD_show is null");
            return (Criteria) this;
        }

        public Criteria andHudShowIsNotNull() {
            addCriterion("HUD_show is not null");
            return (Criteria) this;
        }

        public Criteria andHudShowEqualTo(String value) {
            addCriterion("HUD_show =", value, "hudShow");
            return (Criteria) this;
        }

        public Criteria andHudShowNotEqualTo(String value) {
            addCriterion("HUD_show <>", value, "hudShow");
            return (Criteria) this;
        }

        public Criteria andHudShowGreaterThan(String value) {
            addCriterion("HUD_show >", value, "hudShow");
            return (Criteria) this;
        }

        public Criteria andHudShowGreaterThanOrEqualTo(String value) {
            addCriterion("HUD_show >=", value, "hudShow");
            return (Criteria) this;
        }

        public Criteria andHudShowLessThan(String value) {
            addCriterion("HUD_show <", value, "hudShow");
            return (Criteria) this;
        }

        public Criteria andHudShowLessThanOrEqualTo(String value) {
            addCriterion("HUD_show <=", value, "hudShow");
            return (Criteria) this;
        }

        public Criteria andHudShowLike(String value) {
            addCriterion("HUD_show like", value, "hudShow");
            return (Criteria) this;
        }

        public Criteria andHudShowNotLike(String value) {
            addCriterion("HUD_show not like", value, "hudShow");
            return (Criteria) this;
        }

        public Criteria andHudShowIn(List<String> values) {
            addCriterion("HUD_show in", values, "hudShow");
            return (Criteria) this;
        }

        public Criteria andHudShowNotIn(List<String> values) {
            addCriterion("HUD_show not in", values, "hudShow");
            return (Criteria) this;
        }

        public Criteria andHudShowBetween(String value1, String value2) {
            addCriterion("HUD_show between", value1, value2, "hudShow");
            return (Criteria) this;
        }

        public Criteria andHudShowNotBetween(String value1, String value2) {
            addCriterion("HUD_show not between", value1, value2, "hudShow");
            return (Criteria) this;
        }

        public Criteria andGpsIsNull() {
            addCriterion("GPS is null");
            return (Criteria) this;
        }

        public Criteria andGpsIsNotNull() {
            addCriterion("GPS is not null");
            return (Criteria) this;
        }

        public Criteria andGpsEqualTo(String value) {
            addCriterion("GPS =", value, "gps");
            return (Criteria) this;
        }

        public Criteria andGpsNotEqualTo(String value) {
            addCriterion("GPS <>", value, "gps");
            return (Criteria) this;
        }

        public Criteria andGpsGreaterThan(String value) {
            addCriterion("GPS >", value, "gps");
            return (Criteria) this;
        }

        public Criteria andGpsGreaterThanOrEqualTo(String value) {
            addCriterion("GPS >=", value, "gps");
            return (Criteria) this;
        }

        public Criteria andGpsLessThan(String value) {
            addCriterion("GPS <", value, "gps");
            return (Criteria) this;
        }

        public Criteria andGpsLessThanOrEqualTo(String value) {
            addCriterion("GPS <=", value, "gps");
            return (Criteria) this;
        }

        public Criteria andGpsLike(String value) {
            addCriterion("GPS like", value, "gps");
            return (Criteria) this;
        }

        public Criteria andGpsNotLike(String value) {
            addCriterion("GPS not like", value, "gps");
            return (Criteria) this;
        }

        public Criteria andGpsIn(List<String> values) {
            addCriterion("GPS in", values, "gps");
            return (Criteria) this;
        }

        public Criteria andGpsNotIn(List<String> values) {
            addCriterion("GPS not in", values, "gps");
            return (Criteria) this;
        }

        public Criteria andGpsBetween(String value1, String value2) {
            addCriterion("GPS between", value1, value2, "gps");
            return (Criteria) this;
        }

        public Criteria andGpsNotBetween(String value1, String value2) {
            addCriterion("GPS not between", value1, value2, "gps");
            return (Criteria) this;
        }

        public Criteria andRoadsideAssistanceIsNull() {
            addCriterion("roadside_assistance is null");
            return (Criteria) this;
        }

        public Criteria andRoadsideAssistanceIsNotNull() {
            addCriterion("roadside_assistance is not null");
            return (Criteria) this;
        }

        public Criteria andRoadsideAssistanceEqualTo(String value) {
            addCriterion("roadside_assistance =", value, "roadsideAssistance");
            return (Criteria) this;
        }

        public Criteria andRoadsideAssistanceNotEqualTo(String value) {
            addCriterion("roadside_assistance <>", value, "roadsideAssistance");
            return (Criteria) this;
        }

        public Criteria andRoadsideAssistanceGreaterThan(String value) {
            addCriterion("roadside_assistance >", value, "roadsideAssistance");
            return (Criteria) this;
        }

        public Criteria andRoadsideAssistanceGreaterThanOrEqualTo(String value) {
            addCriterion("roadside_assistance >=", value, "roadsideAssistance");
            return (Criteria) this;
        }

        public Criteria andRoadsideAssistanceLessThan(String value) {
            addCriterion("roadside_assistance <", value, "roadsideAssistance");
            return (Criteria) this;
        }

        public Criteria andRoadsideAssistanceLessThanOrEqualTo(String value) {
            addCriterion("roadside_assistance <=", value, "roadsideAssistance");
            return (Criteria) this;
        }

        public Criteria andRoadsideAssistanceLike(String value) {
            addCriterion("roadside_assistance like", value, "roadsideAssistance");
            return (Criteria) this;
        }

        public Criteria andRoadsideAssistanceNotLike(String value) {
            addCriterion("roadside_assistance not like", value, "roadsideAssistance");
            return (Criteria) this;
        }

        public Criteria andRoadsideAssistanceIn(List<String> values) {
            addCriterion("roadside_assistance in", values, "roadsideAssistance");
            return (Criteria) this;
        }

        public Criteria andRoadsideAssistanceNotIn(List<String> values) {
            addCriterion("roadside_assistance not in", values, "roadsideAssistance");
            return (Criteria) this;
        }

        public Criteria andRoadsideAssistanceBetween(String value1, String value2) {
            addCriterion("roadside_assistance between", value1, value2, "roadsideAssistance");
            return (Criteria) this;
        }

        public Criteria andRoadsideAssistanceNotBetween(String value1, String value2) {
            addCriterion("roadside_assistance not between", value1, value2, "roadsideAssistance");
            return (Criteria) this;
        }

        public Criteria andFourGIsNull() {
            addCriterion("four_g is null");
            return (Criteria) this;
        }

        public Criteria andFourGIsNotNull() {
            addCriterion("four_g is not null");
            return (Criteria) this;
        }

        public Criteria andFourGEqualTo(String value) {
            addCriterion("four_g =", value, "fourG");
            return (Criteria) this;
        }

        public Criteria andFourGNotEqualTo(String value) {
            addCriterion("four_g <>", value, "fourG");
            return (Criteria) this;
        }

        public Criteria andFourGGreaterThan(String value) {
            addCriterion("four_g >", value, "fourG");
            return (Criteria) this;
        }

        public Criteria andFourGGreaterThanOrEqualTo(String value) {
            addCriterion("four_g >=", value, "fourG");
            return (Criteria) this;
        }

        public Criteria andFourGLessThan(String value) {
            addCriterion("four_g <", value, "fourG");
            return (Criteria) this;
        }

        public Criteria andFourGLessThanOrEqualTo(String value) {
            addCriterion("four_g <=", value, "fourG");
            return (Criteria) this;
        }

        public Criteria andFourGLike(String value) {
            addCriterion("four_g like", value, "fourG");
            return (Criteria) this;
        }

        public Criteria andFourGNotLike(String value) {
            addCriterion("four_g not like", value, "fourG");
            return (Criteria) this;
        }

        public Criteria andFourGIn(List<String> values) {
            addCriterion("four_g in", values, "fourG");
            return (Criteria) this;
        }

        public Criteria andFourGNotIn(List<String> values) {
            addCriterion("four_g not in", values, "fourG");
            return (Criteria) this;
        }

        public Criteria andFourGBetween(String value1, String value2) {
            addCriterion("four_g between", value1, value2, "fourG");
            return (Criteria) this;
        }

        public Criteria andFourGNotBetween(String value1, String value2) {
            addCriterion("four_g not between", value1, value2, "fourG");
            return (Criteria) this;
        }

        public Criteria andCarAppIsNull() {
            addCriterion("car_app is null");
            return (Criteria) this;
        }

        public Criteria andCarAppIsNotNull() {
            addCriterion("car_app is not null");
            return (Criteria) this;
        }

        public Criteria andCarAppEqualTo(String value) {
            addCriterion("car_app =", value, "carApp");
            return (Criteria) this;
        }

        public Criteria andCarAppNotEqualTo(String value) {
            addCriterion("car_app <>", value, "carApp");
            return (Criteria) this;
        }

        public Criteria andCarAppGreaterThan(String value) {
            addCriterion("car_app >", value, "carApp");
            return (Criteria) this;
        }

        public Criteria andCarAppGreaterThanOrEqualTo(String value) {
            addCriterion("car_app >=", value, "carApp");
            return (Criteria) this;
        }

        public Criteria andCarAppLessThan(String value) {
            addCriterion("car_app <", value, "carApp");
            return (Criteria) this;
        }

        public Criteria andCarAppLessThanOrEqualTo(String value) {
            addCriterion("car_app <=", value, "carApp");
            return (Criteria) this;
        }

        public Criteria andCarAppLike(String value) {
            addCriterion("car_app like", value, "carApp");
            return (Criteria) this;
        }

        public Criteria andCarAppNotLike(String value) {
            addCriterion("car_app not like", value, "carApp");
            return (Criteria) this;
        }

        public Criteria andCarAppIn(List<String> values) {
            addCriterion("car_app in", values, "carApp");
            return (Criteria) this;
        }

        public Criteria andCarAppNotIn(List<String> values) {
            addCriterion("car_app not in", values, "carApp");
            return (Criteria) this;
        }

        public Criteria andCarAppBetween(String value1, String value2) {
            addCriterion("car_app between", value1, value2, "carApp");
            return (Criteria) this;
        }

        public Criteria andCarAppNotBetween(String value1, String value2) {
            addCriterion("car_app not between", value1, value2, "carApp");
            return (Criteria) this;
        }

        public Criteria andVoiceControlIsNull() {
            addCriterion("voice_control is null");
            return (Criteria) this;
        }

        public Criteria andVoiceControlIsNotNull() {
            addCriterion("voice_control is not null");
            return (Criteria) this;
        }

        public Criteria andVoiceControlEqualTo(String value) {
            addCriterion("voice_control =", value, "voiceControl");
            return (Criteria) this;
        }

        public Criteria andVoiceControlNotEqualTo(String value) {
            addCriterion("voice_control <>", value, "voiceControl");
            return (Criteria) this;
        }

        public Criteria andVoiceControlGreaterThan(String value) {
            addCriterion("voice_control >", value, "voiceControl");
            return (Criteria) this;
        }

        public Criteria andVoiceControlGreaterThanOrEqualTo(String value) {
            addCriterion("voice_control >=", value, "voiceControl");
            return (Criteria) this;
        }

        public Criteria andVoiceControlLessThan(String value) {
            addCriterion("voice_control <", value, "voiceControl");
            return (Criteria) this;
        }

        public Criteria andVoiceControlLessThanOrEqualTo(String value) {
            addCriterion("voice_control <=", value, "voiceControl");
            return (Criteria) this;
        }

        public Criteria andVoiceControlLike(String value) {
            addCriterion("voice_control like", value, "voiceControl");
            return (Criteria) this;
        }

        public Criteria andVoiceControlNotLike(String value) {
            addCriterion("voice_control not like", value, "voiceControl");
            return (Criteria) this;
        }

        public Criteria andVoiceControlIn(List<String> values) {
            addCriterion("voice_control in", values, "voiceControl");
            return (Criteria) this;
        }

        public Criteria andVoiceControlNotIn(List<String> values) {
            addCriterion("voice_control not in", values, "voiceControl");
            return (Criteria) this;
        }

        public Criteria andVoiceControlBetween(String value1, String value2) {
            addCriterion("voice_control between", value1, value2, "voiceControl");
            return (Criteria) this;
        }

        public Criteria andVoiceControlNotBetween(String value1, String value2) {
            addCriterion("voice_control not between", value1, value2, "voiceControl");
            return (Criteria) this;
        }

        public Criteria andCarplayAndroidIsNull() {
            addCriterion("carplay_android is null");
            return (Criteria) this;
        }

        public Criteria andCarplayAndroidIsNotNull() {
            addCriterion("carplay_android is not null");
            return (Criteria) this;
        }

        public Criteria andCarplayAndroidEqualTo(String value) {
            addCriterion("carplay_android =", value, "carplayAndroid");
            return (Criteria) this;
        }

        public Criteria andCarplayAndroidNotEqualTo(String value) {
            addCriterion("carplay_android <>", value, "carplayAndroid");
            return (Criteria) this;
        }

        public Criteria andCarplayAndroidGreaterThan(String value) {
            addCriterion("carplay_android >", value, "carplayAndroid");
            return (Criteria) this;
        }

        public Criteria andCarplayAndroidGreaterThanOrEqualTo(String value) {
            addCriterion("carplay_android >=", value, "carplayAndroid");
            return (Criteria) this;
        }

        public Criteria andCarplayAndroidLessThan(String value) {
            addCriterion("carplay_android <", value, "carplayAndroid");
            return (Criteria) this;
        }

        public Criteria andCarplayAndroidLessThanOrEqualTo(String value) {
            addCriterion("carplay_android <=", value, "carplayAndroid");
            return (Criteria) this;
        }

        public Criteria andCarplayAndroidLike(String value) {
            addCriterion("carplay_android like", value, "carplayAndroid");
            return (Criteria) this;
        }

        public Criteria andCarplayAndroidNotLike(String value) {
            addCriterion("carplay_android not like", value, "carplayAndroid");
            return (Criteria) this;
        }

        public Criteria andCarplayAndroidIn(List<String> values) {
            addCriterion("carplay_android in", values, "carplayAndroid");
            return (Criteria) this;
        }

        public Criteria andCarplayAndroidNotIn(List<String> values) {
            addCriterion("carplay_android not in", values, "carplayAndroid");
            return (Criteria) this;
        }

        public Criteria andCarplayAndroidBetween(String value1, String value2) {
            addCriterion("carplay_android between", value1, value2, "carplayAndroid");
            return (Criteria) this;
        }

        public Criteria andCarplayAndroidNotBetween(String value1, String value2) {
            addCriterion("carplay_android not between", value1, value2, "carplayAndroid");
            return (Criteria) this;
        }

        public Criteria andPhoneWirelessChargingIsNull() {
            addCriterion("phone_wireless_charging is null");
            return (Criteria) this;
        }

        public Criteria andPhoneWirelessChargingIsNotNull() {
            addCriterion("phone_wireless_charging is not null");
            return (Criteria) this;
        }

        public Criteria andPhoneWirelessChargingEqualTo(String value) {
            addCriterion("phone_wireless_charging =", value, "phoneWirelessCharging");
            return (Criteria) this;
        }

        public Criteria andPhoneWirelessChargingNotEqualTo(String value) {
            addCriterion("phone_wireless_charging <>", value, "phoneWirelessCharging");
            return (Criteria) this;
        }

        public Criteria andPhoneWirelessChargingGreaterThan(String value) {
            addCriterion("phone_wireless_charging >", value, "phoneWirelessCharging");
            return (Criteria) this;
        }

        public Criteria andPhoneWirelessChargingGreaterThanOrEqualTo(String value) {
            addCriterion("phone_wireless_charging >=", value, "phoneWirelessCharging");
            return (Criteria) this;
        }

        public Criteria andPhoneWirelessChargingLessThan(String value) {
            addCriterion("phone_wireless_charging <", value, "phoneWirelessCharging");
            return (Criteria) this;
        }

        public Criteria andPhoneWirelessChargingLessThanOrEqualTo(String value) {
            addCriterion("phone_wireless_charging <=", value, "phoneWirelessCharging");
            return (Criteria) this;
        }

        public Criteria andPhoneWirelessChargingLike(String value) {
            addCriterion("phone_wireless_charging like", value, "phoneWirelessCharging");
            return (Criteria) this;
        }

        public Criteria andPhoneWirelessChargingNotLike(String value) {
            addCriterion("phone_wireless_charging not like", value, "phoneWirelessCharging");
            return (Criteria) this;
        }

        public Criteria andPhoneWirelessChargingIn(List<String> values) {
            addCriterion("phone_wireless_charging in", values, "phoneWirelessCharging");
            return (Criteria) this;
        }

        public Criteria andPhoneWirelessChargingNotIn(List<String> values) {
            addCriterion("phone_wireless_charging not in", values, "phoneWirelessCharging");
            return (Criteria) this;
        }

        public Criteria andPhoneWirelessChargingBetween(String value1, String value2) {
            addCriterion("phone_wireless_charging between", value1, value2, "phoneWirelessCharging");
            return (Criteria) this;
        }

        public Criteria andPhoneWirelessChargingNotBetween(String value1, String value2) {
            addCriterion("phone_wireless_charging not between", value1, value2, "phoneWirelessCharging");
            return (Criteria) this;
        }

        public Criteria andGestureControlIsNull() {
            addCriterion("gesture_control is null");
            return (Criteria) this;
        }

        public Criteria andGestureControlIsNotNull() {
            addCriterion("gesture_control is not null");
            return (Criteria) this;
        }

        public Criteria andGestureControlEqualTo(String value) {
            addCriterion("gesture_control =", value, "gestureControl");
            return (Criteria) this;
        }

        public Criteria andGestureControlNotEqualTo(String value) {
            addCriterion("gesture_control <>", value, "gestureControl");
            return (Criteria) this;
        }

        public Criteria andGestureControlGreaterThan(String value) {
            addCriterion("gesture_control >", value, "gestureControl");
            return (Criteria) this;
        }

        public Criteria andGestureControlGreaterThanOrEqualTo(String value) {
            addCriterion("gesture_control >=", value, "gestureControl");
            return (Criteria) this;
        }

        public Criteria andGestureControlLessThan(String value) {
            addCriterion("gesture_control <", value, "gestureControl");
            return (Criteria) this;
        }

        public Criteria andGestureControlLessThanOrEqualTo(String value) {
            addCriterion("gesture_control <=", value, "gestureControl");
            return (Criteria) this;
        }

        public Criteria andGestureControlLike(String value) {
            addCriterion("gesture_control like", value, "gestureControl");
            return (Criteria) this;
        }

        public Criteria andGestureControlNotLike(String value) {
            addCriterion("gesture_control not like", value, "gestureControl");
            return (Criteria) this;
        }

        public Criteria andGestureControlIn(List<String> values) {
            addCriterion("gesture_control in", values, "gestureControl");
            return (Criteria) this;
        }

        public Criteria andGestureControlNotIn(List<String> values) {
            addCriterion("gesture_control not in", values, "gestureControl");
            return (Criteria) this;
        }

        public Criteria andGestureControlBetween(String value1, String value2) {
            addCriterion("gesture_control between", value1, value2, "gestureControl");
            return (Criteria) this;
        }

        public Criteria andGestureControlNotBetween(String value1, String value2) {
            addCriterion("gesture_control not between", value1, value2, "gestureControl");
            return (Criteria) this;
        }

        public Criteria andCdDvdIsNull() {
            addCriterion("cd_dvd is null");
            return (Criteria) this;
        }

        public Criteria andCdDvdIsNotNull() {
            addCriterion("cd_dvd is not null");
            return (Criteria) this;
        }

        public Criteria andCdDvdEqualTo(String value) {
            addCriterion("cd_dvd =", value, "cdDvd");
            return (Criteria) this;
        }

        public Criteria andCdDvdNotEqualTo(String value) {
            addCriterion("cd_dvd <>", value, "cdDvd");
            return (Criteria) this;
        }

        public Criteria andCdDvdGreaterThan(String value) {
            addCriterion("cd_dvd >", value, "cdDvd");
            return (Criteria) this;
        }

        public Criteria andCdDvdGreaterThanOrEqualTo(String value) {
            addCriterion("cd_dvd >=", value, "cdDvd");
            return (Criteria) this;
        }

        public Criteria andCdDvdLessThan(String value) {
            addCriterion("cd_dvd <", value, "cdDvd");
            return (Criteria) this;
        }

        public Criteria andCdDvdLessThanOrEqualTo(String value) {
            addCriterion("cd_dvd <=", value, "cdDvd");
            return (Criteria) this;
        }

        public Criteria andCdDvdLike(String value) {
            addCriterion("cd_dvd like", value, "cdDvd");
            return (Criteria) this;
        }

        public Criteria andCdDvdNotLike(String value) {
            addCriterion("cd_dvd not like", value, "cdDvd");
            return (Criteria) this;
        }

        public Criteria andCdDvdIn(List<String> values) {
            addCriterion("cd_dvd in", values, "cdDvd");
            return (Criteria) this;
        }

        public Criteria andCdDvdNotIn(List<String> values) {
            addCriterion("cd_dvd not in", values, "cdDvd");
            return (Criteria) this;
        }

        public Criteria andCdDvdBetween(String value1, String value2) {
            addCriterion("cd_dvd between", value1, value2, "cdDvd");
            return (Criteria) this;
        }

        public Criteria andCdDvdNotBetween(String value1, String value2) {
            addCriterion("cd_dvd not between", value1, value2, "cdDvd");
            return (Criteria) this;
        }

        public Criteria andBluetoothWifiIsNull() {
            addCriterion("bluetooth_wifi is null");
            return (Criteria) this;
        }

        public Criteria andBluetoothWifiIsNotNull() {
            addCriterion("bluetooth_wifi is not null");
            return (Criteria) this;
        }

        public Criteria andBluetoothWifiEqualTo(String value) {
            addCriterion("bluetooth_wifi =", value, "bluetoothWifi");
            return (Criteria) this;
        }

        public Criteria andBluetoothWifiNotEqualTo(String value) {
            addCriterion("bluetooth_wifi <>", value, "bluetoothWifi");
            return (Criteria) this;
        }

        public Criteria andBluetoothWifiGreaterThan(String value) {
            addCriterion("bluetooth_wifi >", value, "bluetoothWifi");
            return (Criteria) this;
        }

        public Criteria andBluetoothWifiGreaterThanOrEqualTo(String value) {
            addCriterion("bluetooth_wifi >=", value, "bluetoothWifi");
            return (Criteria) this;
        }

        public Criteria andBluetoothWifiLessThan(String value) {
            addCriterion("bluetooth_wifi <", value, "bluetoothWifi");
            return (Criteria) this;
        }

        public Criteria andBluetoothWifiLessThanOrEqualTo(String value) {
            addCriterion("bluetooth_wifi <=", value, "bluetoothWifi");
            return (Criteria) this;
        }

        public Criteria andBluetoothWifiLike(String value) {
            addCriterion("bluetooth_wifi like", value, "bluetoothWifi");
            return (Criteria) this;
        }

        public Criteria andBluetoothWifiNotLike(String value) {
            addCriterion("bluetooth_wifi not like", value, "bluetoothWifi");
            return (Criteria) this;
        }

        public Criteria andBluetoothWifiIn(List<String> values) {
            addCriterion("bluetooth_wifi in", values, "bluetoothWifi");
            return (Criteria) this;
        }

        public Criteria andBluetoothWifiNotIn(List<String> values) {
            addCriterion("bluetooth_wifi not in", values, "bluetoothWifi");
            return (Criteria) this;
        }

        public Criteria andBluetoothWifiBetween(String value1, String value2) {
            addCriterion("bluetooth_wifi between", value1, value2, "bluetoothWifi");
            return (Criteria) this;
        }

        public Criteria andBluetoothWifiNotBetween(String value1, String value2) {
            addCriterion("bluetooth_wifi not between", value1, value2, "bluetoothWifi");
            return (Criteria) this;
        }

        public Criteria andExternalInterfaceIsNull() {
            addCriterion("external_interface is null");
            return (Criteria) this;
        }

        public Criteria andExternalInterfaceIsNotNull() {
            addCriterion("external_interface is not null");
            return (Criteria) this;
        }

        public Criteria andExternalInterfaceEqualTo(String value) {
            addCriterion("external_interface =", value, "externalInterface");
            return (Criteria) this;
        }

        public Criteria andExternalInterfaceNotEqualTo(String value) {
            addCriterion("external_interface <>", value, "externalInterface");
            return (Criteria) this;
        }

        public Criteria andExternalInterfaceGreaterThan(String value) {
            addCriterion("external_interface >", value, "externalInterface");
            return (Criteria) this;
        }

        public Criteria andExternalInterfaceGreaterThanOrEqualTo(String value) {
            addCriterion("external_interface >=", value, "externalInterface");
            return (Criteria) this;
        }

        public Criteria andExternalInterfaceLessThan(String value) {
            addCriterion("external_interface <", value, "externalInterface");
            return (Criteria) this;
        }

        public Criteria andExternalInterfaceLessThanOrEqualTo(String value) {
            addCriterion("external_interface <=", value, "externalInterface");
            return (Criteria) this;
        }

        public Criteria andExternalInterfaceLike(String value) {
            addCriterion("external_interface like", value, "externalInterface");
            return (Criteria) this;
        }

        public Criteria andExternalInterfaceNotLike(String value) {
            addCriterion("external_interface not like", value, "externalInterface");
            return (Criteria) this;
        }

        public Criteria andExternalInterfaceIn(List<String> values) {
            addCriterion("external_interface in", values, "externalInterface");
            return (Criteria) this;
        }

        public Criteria andExternalInterfaceNotIn(List<String> values) {
            addCriterion("external_interface not in", values, "externalInterface");
            return (Criteria) this;
        }

        public Criteria andExternalInterfaceBetween(String value1, String value2) {
            addCriterion("external_interface between", value1, value2, "externalInterface");
            return (Criteria) this;
        }

        public Criteria andExternalInterfaceNotBetween(String value1, String value2) {
            addCriterion("external_interface not between", value1, value2, "externalInterface");
            return (Criteria) this;
        }

        public Criteria andAutomobileDataRecorderIsNull() {
            addCriterion("automobile_data_recorder is null");
            return (Criteria) this;
        }

        public Criteria andAutomobileDataRecorderIsNotNull() {
            addCriterion("automobile_data_recorder is not null");
            return (Criteria) this;
        }

        public Criteria andAutomobileDataRecorderEqualTo(String value) {
            addCriterion("automobile_data_recorder =", value, "automobileDataRecorder");
            return (Criteria) this;
        }

        public Criteria andAutomobileDataRecorderNotEqualTo(String value) {
            addCriterion("automobile_data_recorder <>", value, "automobileDataRecorder");
            return (Criteria) this;
        }

        public Criteria andAutomobileDataRecorderGreaterThan(String value) {
            addCriterion("automobile_data_recorder >", value, "automobileDataRecorder");
            return (Criteria) this;
        }

        public Criteria andAutomobileDataRecorderGreaterThanOrEqualTo(String value) {
            addCriterion("automobile_data_recorder >=", value, "automobileDataRecorder");
            return (Criteria) this;
        }

        public Criteria andAutomobileDataRecorderLessThan(String value) {
            addCriterion("automobile_data_recorder <", value, "automobileDataRecorder");
            return (Criteria) this;
        }

        public Criteria andAutomobileDataRecorderLessThanOrEqualTo(String value) {
            addCriterion("automobile_data_recorder <=", value, "automobileDataRecorder");
            return (Criteria) this;
        }

        public Criteria andAutomobileDataRecorderLike(String value) {
            addCriterion("automobile_data_recorder like", value, "automobileDataRecorder");
            return (Criteria) this;
        }

        public Criteria andAutomobileDataRecorderNotLike(String value) {
            addCriterion("automobile_data_recorder not like", value, "automobileDataRecorder");
            return (Criteria) this;
        }

        public Criteria andAutomobileDataRecorderIn(List<String> values) {
            addCriterion("automobile_data_recorder in", values, "automobileDataRecorder");
            return (Criteria) this;
        }

        public Criteria andAutomobileDataRecorderNotIn(List<String> values) {
            addCriterion("automobile_data_recorder not in", values, "automobileDataRecorder");
            return (Criteria) this;
        }

        public Criteria andAutomobileDataRecorderBetween(String value1, String value2) {
            addCriterion("automobile_data_recorder between", value1, value2, "automobileDataRecorder");
            return (Criteria) this;
        }

        public Criteria andAutomobileDataRecorderNotBetween(String value1, String value2) {
            addCriterion("automobile_data_recorder not between", value1, value2, "automobileDataRecorder");
            return (Criteria) this;
        }

        public Criteria andCarTvIsNull() {
            addCriterion("car_tv is null");
            return (Criteria) this;
        }

        public Criteria andCarTvIsNotNull() {
            addCriterion("car_tv is not null");
            return (Criteria) this;
        }

        public Criteria andCarTvEqualTo(String value) {
            addCriterion("car_tv =", value, "carTv");
            return (Criteria) this;
        }

        public Criteria andCarTvNotEqualTo(String value) {
            addCriterion("car_tv <>", value, "carTv");
            return (Criteria) this;
        }

        public Criteria andCarTvGreaterThan(String value) {
            addCriterion("car_tv >", value, "carTv");
            return (Criteria) this;
        }

        public Criteria andCarTvGreaterThanOrEqualTo(String value) {
            addCriterion("car_tv >=", value, "carTv");
            return (Criteria) this;
        }

        public Criteria andCarTvLessThan(String value) {
            addCriterion("car_tv <", value, "carTv");
            return (Criteria) this;
        }

        public Criteria andCarTvLessThanOrEqualTo(String value) {
            addCriterion("car_tv <=", value, "carTv");
            return (Criteria) this;
        }

        public Criteria andCarTvLike(String value) {
            addCriterion("car_tv like", value, "carTv");
            return (Criteria) this;
        }

        public Criteria andCarTvNotLike(String value) {
            addCriterion("car_tv not like", value, "carTv");
            return (Criteria) this;
        }

        public Criteria andCarTvIn(List<String> values) {
            addCriterion("car_tv in", values, "carTv");
            return (Criteria) this;
        }

        public Criteria andCarTvNotIn(List<String> values) {
            addCriterion("car_tv not in", values, "carTv");
            return (Criteria) this;
        }

        public Criteria andCarTvBetween(String value1, String value2) {
            addCriterion("car_tv between", value1, value2, "carTv");
            return (Criteria) this;
        }

        public Criteria andCarTvNotBetween(String value1, String value2) {
            addCriterion("car_tv not between", value1, value2, "carTv");
            return (Criteria) this;
        }

        public Criteria andSoundBrandIsNull() {
            addCriterion("sound_brand is null");
            return (Criteria) this;
        }

        public Criteria andSoundBrandIsNotNull() {
            addCriterion("sound_brand is not null");
            return (Criteria) this;
        }

        public Criteria andSoundBrandEqualTo(String value) {
            addCriterion("sound_brand =", value, "soundBrand");
            return (Criteria) this;
        }

        public Criteria andSoundBrandNotEqualTo(String value) {
            addCriterion("sound_brand <>", value, "soundBrand");
            return (Criteria) this;
        }

        public Criteria andSoundBrandGreaterThan(String value) {
            addCriterion("sound_brand >", value, "soundBrand");
            return (Criteria) this;
        }

        public Criteria andSoundBrandGreaterThanOrEqualTo(String value) {
            addCriterion("sound_brand >=", value, "soundBrand");
            return (Criteria) this;
        }

        public Criteria andSoundBrandLessThan(String value) {
            addCriterion("sound_brand <", value, "soundBrand");
            return (Criteria) this;
        }

        public Criteria andSoundBrandLessThanOrEqualTo(String value) {
            addCriterion("sound_brand <=", value, "soundBrand");
            return (Criteria) this;
        }

        public Criteria andSoundBrandLike(String value) {
            addCriterion("sound_brand like", value, "soundBrand");
            return (Criteria) this;
        }

        public Criteria andSoundBrandNotLike(String value) {
            addCriterion("sound_brand not like", value, "soundBrand");
            return (Criteria) this;
        }

        public Criteria andSoundBrandIn(List<String> values) {
            addCriterion("sound_brand in", values, "soundBrand");
            return (Criteria) this;
        }

        public Criteria andSoundBrandNotIn(List<String> values) {
            addCriterion("sound_brand not in", values, "soundBrand");
            return (Criteria) this;
        }

        public Criteria andSoundBrandBetween(String value1, String value2) {
            addCriterion("sound_brand between", value1, value2, "soundBrand");
            return (Criteria) this;
        }

        public Criteria andSoundBrandNotBetween(String value1, String value2) {
            addCriterion("sound_brand not between", value1, value2, "soundBrand");
            return (Criteria) this;
        }

        public Criteria andLoudspeakerNumIsNull() {
            addCriterion("loudspeaker_num is null");
            return (Criteria) this;
        }

        public Criteria andLoudspeakerNumIsNotNull() {
            addCriterion("loudspeaker_num is not null");
            return (Criteria) this;
        }

        public Criteria andLoudspeakerNumEqualTo(String value) {
            addCriterion("loudspeaker_num =", value, "loudspeakerNum");
            return (Criteria) this;
        }

        public Criteria andLoudspeakerNumNotEqualTo(String value) {
            addCriterion("loudspeaker_num <>", value, "loudspeakerNum");
            return (Criteria) this;
        }

        public Criteria andLoudspeakerNumGreaterThan(String value) {
            addCriterion("loudspeaker_num >", value, "loudspeakerNum");
            return (Criteria) this;
        }

        public Criteria andLoudspeakerNumGreaterThanOrEqualTo(String value) {
            addCriterion("loudspeaker_num >=", value, "loudspeakerNum");
            return (Criteria) this;
        }

        public Criteria andLoudspeakerNumLessThan(String value) {
            addCriterion("loudspeaker_num <", value, "loudspeakerNum");
            return (Criteria) this;
        }

        public Criteria andLoudspeakerNumLessThanOrEqualTo(String value) {
            addCriterion("loudspeaker_num <=", value, "loudspeakerNum");
            return (Criteria) this;
        }

        public Criteria andLoudspeakerNumLike(String value) {
            addCriterion("loudspeaker_num like", value, "loudspeakerNum");
            return (Criteria) this;
        }

        public Criteria andLoudspeakerNumNotLike(String value) {
            addCriterion("loudspeaker_num not like", value, "loudspeakerNum");
            return (Criteria) this;
        }

        public Criteria andLoudspeakerNumIn(List<String> values) {
            addCriterion("loudspeaker_num in", values, "loudspeakerNum");
            return (Criteria) this;
        }

        public Criteria andLoudspeakerNumNotIn(List<String> values) {
            addCriterion("loudspeaker_num not in", values, "loudspeakerNum");
            return (Criteria) this;
        }

        public Criteria andLoudspeakerNumBetween(String value1, String value2) {
            addCriterion("loudspeaker_num between", value1, value2, "loudspeakerNum");
            return (Criteria) this;
        }

        public Criteria andLoudspeakerNumNotBetween(String value1, String value2) {
            addCriterion("loudspeaker_num not between", value1, value2, "loudspeakerNum");
            return (Criteria) this;
        }

        public Criteria andEntertainmentSystemIsNull() {
            addCriterion("entertainment_system is null");
            return (Criteria) this;
        }

        public Criteria andEntertainmentSystemIsNotNull() {
            addCriterion("entertainment_system is not null");
            return (Criteria) this;
        }

        public Criteria andEntertainmentSystemEqualTo(String value) {
            addCriterion("entertainment_system =", value, "entertainmentSystem");
            return (Criteria) this;
        }

        public Criteria andEntertainmentSystemNotEqualTo(String value) {
            addCriterion("entertainment_system <>", value, "entertainmentSystem");
            return (Criteria) this;
        }

        public Criteria andEntertainmentSystemGreaterThan(String value) {
            addCriterion("entertainment_system >", value, "entertainmentSystem");
            return (Criteria) this;
        }

        public Criteria andEntertainmentSystemGreaterThanOrEqualTo(String value) {
            addCriterion("entertainment_system >=", value, "entertainmentSystem");
            return (Criteria) this;
        }

        public Criteria andEntertainmentSystemLessThan(String value) {
            addCriterion("entertainment_system <", value, "entertainmentSystem");
            return (Criteria) this;
        }

        public Criteria andEntertainmentSystemLessThanOrEqualTo(String value) {
            addCriterion("entertainment_system <=", value, "entertainmentSystem");
            return (Criteria) this;
        }

        public Criteria andEntertainmentSystemLike(String value) {
            addCriterion("entertainment_system like", value, "entertainmentSystem");
            return (Criteria) this;
        }

        public Criteria andEntertainmentSystemNotLike(String value) {
            addCriterion("entertainment_system not like", value, "entertainmentSystem");
            return (Criteria) this;
        }

        public Criteria andEntertainmentSystemIn(List<String> values) {
            addCriterion("entertainment_system in", values, "entertainmentSystem");
            return (Criteria) this;
        }

        public Criteria andEntertainmentSystemNotIn(List<String> values) {
            addCriterion("entertainment_system not in", values, "entertainmentSystem");
            return (Criteria) this;
        }

        public Criteria andEntertainmentSystemBetween(String value1, String value2) {
            addCriterion("entertainment_system between", value1, value2, "entertainmentSystem");
            return (Criteria) this;
        }

        public Criteria andEntertainmentSystemNotBetween(String value1, String value2) {
            addCriterion("entertainment_system not between", value1, value2, "entertainmentSystem");
            return (Criteria) this;
        }

        public Criteria andCarPowerIsNull() {
            addCriterion("car_power is null");
            return (Criteria) this;
        }

        public Criteria andCarPowerIsNotNull() {
            addCriterion("car_power is not null");
            return (Criteria) this;
        }

        public Criteria andCarPowerEqualTo(String value) {
            addCriterion("car_power =", value, "carPower");
            return (Criteria) this;
        }

        public Criteria andCarPowerNotEqualTo(String value) {
            addCriterion("car_power <>", value, "carPower");
            return (Criteria) this;
        }

        public Criteria andCarPowerGreaterThan(String value) {
            addCriterion("car_power >", value, "carPower");
            return (Criteria) this;
        }

        public Criteria andCarPowerGreaterThanOrEqualTo(String value) {
            addCriterion("car_power >=", value, "carPower");
            return (Criteria) this;
        }

        public Criteria andCarPowerLessThan(String value) {
            addCriterion("car_power <", value, "carPower");
            return (Criteria) this;
        }

        public Criteria andCarPowerLessThanOrEqualTo(String value) {
            addCriterion("car_power <=", value, "carPower");
            return (Criteria) this;
        }

        public Criteria andCarPowerLike(String value) {
            addCriterion("car_power like", value, "carPower");
            return (Criteria) this;
        }

        public Criteria andCarPowerNotLike(String value) {
            addCriterion("car_power not like", value, "carPower");
            return (Criteria) this;
        }

        public Criteria andCarPowerIn(List<String> values) {
            addCriterion("car_power in", values, "carPower");
            return (Criteria) this;
        }

        public Criteria andCarPowerNotIn(List<String> values) {
            addCriterion("car_power not in", values, "carPower");
            return (Criteria) this;
        }

        public Criteria andCarPowerBetween(String value1, String value2) {
            addCriterion("car_power between", value1, value2, "carPower");
            return (Criteria) this;
        }

        public Criteria andCarPowerNotBetween(String value1, String value2) {
            addCriterion("car_power not between", value1, value2, "carPower");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}